package config

import (
	"encoding/json"
	"io/ioutil"
)

// 配置文件

// 数据库
type Database struct {
	Driver   string `json:"driver"`
	User     string `json:"user"`
	Password string `json:"password"`
	Name     string `json:"name"`
}

// 赛邮云
type Submail struct {
	EmailID  string `json:"email_id"`
	EmailKey string `json:"email_key"`
	SmsID    string `json:"sms_id"`
	SmsKey   string `json:"sms_key"`
}

// sendclound
type SendCloud struct {
	ApiUser string `json:"api_user"`
	ApiKey string `json:"api_key"`
}

// 配置 struct
type Config struct {
	Name        string    `json:"name"`        // 网站名
	Author      string    `json:"author"`      // 作者
	Email       string    `json:"email"`       // 邮箱
	Api         string    `json:"api"`         // api
	ApiVersion  string    `json:"apiVersion"`  // api 版本
	StaticApi   string    `json:"staticApi"`   // 静态api
	Abstract    string    `json:"abstract"`    // 描述
	Description string    `json:"description"` // 简介
	Username    string    `json:"username"`    // 用户名
	Password    string    `json:"password"`    // 密码
	Database    Database  `json:"database"`    // 数据库
	Submail     Submail   `json:"submail"`     // 赛邮云
	SendCloud   SendCloud `json:"sendCloud"`   // sendcloud
}

// 数据
func App() Config {
	var config Config
	data, _ := ioutil.ReadFile("./app.json")
	//读取的数据为json格式，需要进行解码
	_ = json.Unmarshal(data, &config)

	return config
}
